昨天我們學會了計算投資報酬率(ROI),今天我們要更進一步——用 Python 直接畫出台積電(TSMC)過去一年的股價趨勢圖,幫助我們更直觀地觀察市場走勢。
這篇文章會帶你一步步完成兩張圖:
一、準備工作
我們需要用到的 Python 套件:
pip install yfinance pandas matplotlib
二、繪製台積電股價走勢圖
下面這段程式碼會從 Yahoo Finance 抓取台積電(台灣上市,代碼 2330.TW)過去一年的資料,並繪製收盤價走勢圖。
import yfinance as yf
import pandas as pd
import matplotlib.pyplot as plt
# 設定字型避免中文亂碼(Mac、Windows 請依環境調整)
plt.rcParams['font.sans-serif'] = ['Microsoft JhengHei'] # Windows
plt.rcParams['axes.unicode_minus'] = False
# 下載台積電過去一年的股價資料
tsmc = yf.download("2330.TW", period="1y")
# 繪製第一張圖:收盤價走勢圖
plt.figure(figsize=(12, 6))
plt.plot(tsmc.index, tsmc['Close'], label="收盤價", color="blue")
plt.title("台積電股價走勢圖 (過去一年)", fontsize=16)
plt.xlabel("日期")
plt.ylabel("價格 (TWD)")
plt.legend()
plt.grid(True)
plt.show()
這張圖能讓我們快速了解台積電在一年內的股價波動,例如:哪段時間下跌、哪段時間上漲。
三、加入移動平均線
移動平均線(Moving Average, MA)可以幫助我們觀察股價的趨勢方向。
# 計算 20 日與 60 日移動平均線
tsmc['MA20'] = tsmc['Close'].rolling(window=20).mean()
tsmc['MA60'] = tsmc['Close'].rolling(window=60).mean()
# 繪製第二張圖:收盤價 + 均線
plt.figure(figsize=(12, 6))
plt.plot(tsmc.index, tsmc['Close'], label="收盤價", color="blue")
plt.plot(tsmc.index, tsmc['MA20'], label="20日均線", color="orange")
plt.plot(tsmc.index, tsmc['MA60'], label="60日均線", color="green")
plt.title("台積電股價走勢與移動平均線", fontsize=16)
plt.xlabel("日期")
plt.ylabel("價格 (TWD)")
plt.legend()
plt.grid(True)
plt.show()
這張圖可以幫助我們:
四、總結
今天我們學會了: